Many computer systems are formed from separate components, e.g., integrated circuits (ICs) coupled to a motherboard or other circuit board of the system. With the ever-increasing processing capacity and number of processing units that can be incorporated in a single IC, a system formed of a single IC such as a system-on-chip (SoC) can be incorporated into different devices such as mobile devices, embedded systems and so forth.
To connect components together, some type of interconnection network is used, and one or more routers may also be present. Currently, multiple routers of a system are highly homogeneous: different ports of a router operate at the same speed, as do different virtual channels (VCs) or other independent pathways of a port. This is a mismatch to the actual usages in SoC's where balanced traffic across ports and equal criticality across virtual channels are actually rare cases. A homogeneous design across ports and VCs inevitably results in suboptimal power consumption at the components where a lower speed is acceptable and incurs a performance penalty at the components where critical messages would benefit from a higher processing speed.